#include <vector>
#include <algorithm>
#include "stack.h"

void test1()
{
	bit::stack<int> st;
	st.push(1);
	st.push(2);
	st.push(3);
	st.push(4);

	cout << "st.top():" << st.top() << endl;
	cout << "st.size():" << st.size() << endl;
	cout << "st.empty():" << st.empty() << endl;

	while (!st.empty())
	{
		cout << st.top() << " ";
		st.pop();
	}
	cout << endl;
}

int main()
{
	test1();
	return 0;
}




//void test2()
//{
//	srand(time(0));
//	const int N = 1000000;
//
//	deque<int> dq;
//	vector<int> v;
//
//	for (int i = 0; i < N; ++i)
//	{
//		auto e = rand() + i;
//		v.push_back(e);
//		dq.push_back(e);
//	}
//
//	int begin1 = clock();
//	sort(v.begin(), v.end());
//	int end1 = clock();
//
//	int begin2 = clock();
//	sort(dq.begin(), dq.end());
//	int end2 = clock();
//
//	printf("vector:%d\n", end1 - begin1);
//	printf("deque:%d\n", end2 - begin2);
//}
//
//int main()
//{
//	test1();
//	//test2();
//	return 0;
//}